package com.afollestad.commons.color;

import ohos.agp.utils.Color;

/**
 * @author Aidan Follestad (afollestad)
 */
class ColorPalette {

    static final Color[] PRIMARY_COLORS =
            new Color[]{
                    new Color(0xFFF44336),
                    new Color(0xFFE91E63),
                    new Color(0xFF9C27B0),
                    new Color(0xFF673AB7),
                    new Color(0xFF3F51B5),
                    new Color(0xFF2196F3),
                    new Color(0xFF03A9F4),
                    new Color(0xFF00BCD4),
                    new Color(0xFF009688),
                    new Color(0xFF4CAF50),
                    new Color(0xFF8BC34A),
                    new Color(0xFFCDDC39),
                    new Color(0xFFFFEB3B),
                    new Color(0xFFFFC107),
                    new Color(0xFFFF9800),
                    new Color(0xFFFF5722),
                    new Color(0xFF795548),
                    new Color(0xFF9E9E9E),
                    new Color(0xFF607D8B)
            };

    static final Color[][] PRIMARY_COLORS_SUB =
            new Color[][]{
                    new Color[]{
                            new Color(0xFFFFEBEE),
                            new Color(0xFFFFCDD2),
                            new Color(0xFFEF9A9A),
                            new Color(0xFFE57373),
                            new Color(0xFFEF5350),
                            new Color(0xFFF44336),
                            new Color(0xFFE53935),
                            new Color(0xFFD32F2F),
                            new Color(0xFFC62828),
                            new Color(0xFFB71C1C)
                    },
                    new Color[]{
                            new Color(0xFFFCE4EC),
                            new Color(0xFFF8BBD0),
                            new Color(0xFFF48FB1),
                            new Color(0xFFF06292),
                            new Color(0xFFEC407A),
                            new Color(0xFFE01E63),
                            new Color(0xFFD81B60),
                            new Color(0xFFC2185B),
                            new Color(0xFFAD1457),
                            new Color(0xFF880E4F)
                    },
                    new Color[]{
                            new Color(0xFFF3E5F5),
                            new Color(0xFFE1BEE7),
                            new Color(0xFFCE93D8),
                            new Color(0xFFBA68C8),
                            new Color(0xFFAB47BC),
                            new Color(0xFF9C27B0),
                            new Color(0xFF8E24AA),
                            new Color(0xFF7B1FA2),
                            new Color(0xFF6A1B9A),
                            new Color(0xFF4A148C)
                    },
                    new Color[]{
                            new Color(0xFFEDE7F6),
                            new Color(0xFFD1C4E9),
                            new Color(0xFFB39DDB),
                            new Color(0xFF9575CD),
                            new Color(0xFF7E57C2),
                            new Color(0xFF673AB7),
                            new Color(0xFF5E35B1),
                            new Color(0xFF512DA8),
                            new Color(0xFF4527A0),
                            new Color(0xFF311B92)
                    },
                    new Color[]{
                            new Color(0xFFE8EAF6),
                            new Color(0xFFC5CAE9),
                            new Color(0xFF9FA8DA),
                            new Color(0xFF7986CB),
                            new Color(0xFF5C6BC0),
                            new Color(0xFF3F51B5),
                            new Color(0xFF3949AB),
                            new Color(0xFF303F9F),
                            new Color(0xFF283593),
                            new Color(0xFF1A237E)
                    },
                    new Color[]{
                            new Color(0xFFE3F2FD),
                            new Color(0xFFBBDEFB),
                            new Color(0xFF90CAF9),
                            new Color(0xFF64B5F6),
                            new Color(0xFF42A5F5),
                            new Color(0xFF2196F3),
                            new Color(0xFF1E88E5),
                            new Color(0xFF1976D2),
                            new Color(0xFF1565C0),
                            new Color(0xFF0D47A1)
                    },
                    new Color[]{
                            new Color(0xFFE1F5FE),
                            new Color(0xFFB3E5FC),
                            new Color(0xFF81D4FA),
                            new Color(0xFF4FC3F7),
                            new Color(0xFF29B6F6),
                            new Color(0xFF03A9F4),
                            new Color(0xFF039BE5),
                            new Color(0xFF0288D1),
                            new Color(0xFF0277BD),
                            new Color(0xFF01579B)
                    },
                    new Color[]{
                            new Color(0xFFE0F7FA),
                            new Color(0xFFB2EBF2),
                            new Color(0xFF80DEEA),
                            new Color(0xFF4DD0E1),
                            new Color(0xFF26C6DA),
                            new Color(0xFF00BCD4),
                            new Color(0xFF00ACC1),
                            new Color(0xFF0097A7),
                            new Color(0xFF00838F),
                            new Color(0xFF006064)
                    },
                    new Color[]{
                            new Color(0xFFE0F2F1),
                            new Color(0xFFB2DFDB),
                            new Color(0xFF80CBC4),
                            new Color(0xFF4DB6AC),
                            new Color(0xFF26A69A),
                            new Color(0xFF009688),
                            new Color(0xFF00897B),
                            new Color(0xFF00796B),
                            new Color(0xFF00695C),
                            new Color(0xFF004D40)
                    },
                    new Color[]{
                            new Color(0xFFE8F5E9),
                            new Color(0xFFC8E6C9),
                            new Color(0xFFA5D6A7),
                            new Color(0xFF81C784),
                            new Color(0xFF66BB6A),
                            new Color(0xFF4CAF50),
                            new Color(0xFF43A047),
                            new Color(0xFF388E3C),
                            new Color(0xFF2E7D32),
                            new Color(0xFF1B5E20)
                    },
                    new Color[]{
                            new Color(0xFFF1F8E9),
                            new Color(0xFFDCEDC8),
                            new Color(0xFFC5E1A5),
                            new Color(0xFFAED581),
                            new Color(0xFF9CCC65),
                            new Color(0xFF8BC34A),
                            new Color(0xFF7CB342),
                            new Color(0xFF689F38),
                            new Color(0xFF558B2F),
                            new Color(0xFF33691E)
                    },
                    new Color[]{
                            new Color(0xFFF9FBE7),
                            new Color(0xFFF0F4C3),
                            new Color(0xFFE6EE9C),
                            new Color(0xFFDCE775),
                            new Color(0xFFD4E157),
                            new Color(0xFFCDDC39),
                            new Color(0xFFC0CA33),
                            new Color(0xFFAFB42B),
                            new Color(0xFF9E9D24),
                            new Color(0xFF827717)
                    },
                    new Color[]{
                            new Color(0xFFFFFDE7),
                            new Color(0xFFFFF9C4),
                            new Color(0xFFFFF59D),
                            new Color(0xFFFFF176),
                            new Color(0xFFFFEE58),
                            new Color(0xFFFFEB3B),
                            new Color(0xFFFDD835),
                            new Color(0xFFFBC02D),
                            new Color(0xFFF9A825),
                            new Color(0xFFF57F17)
                    },
                    new Color[]{
                            new Color(0xFFFFF8E1),
                            new Color(0xFFFFECB3),
                            new Color(0xFFFFE082),
                            new Color(0xFFFFD54F),
                            new Color(0xFFFFCA28),
                            new Color(0xFFFFC107),
                            new Color(0xFFFFB300),
                            new Color(0xFFFFA000),
                            new Color(0xFFFF8F00),
                            new Color(0xFFFF6F00)
                    },
                    new Color[]{
                            new Color(0xFFFFF3E0),
                            new Color(0xFFFFE0B2),
                            new Color(0xFFFFCC80),
                            new Color(0xFFFFB74D),
                            new Color(0xFFFFA726),
                            new Color(0xFFFF9800),
                            new Color(0xFFFB8C00),
                            new Color(0xFFF57C00),
                            new Color(0xFFEF6C00),
                            new Color(0xFFE65100)
                    },
                    new Color[]{
                            new Color(0xFFFBE9E7),
                            new Color(0xFFFFCCBC),
                            new Color(0xFFFFAB91),
                            new Color(0xFFFF8A65),
                            new Color(0xFFFF7043),
                            new Color(0xFFFF5722),
                            new Color(0xFFF4511E),
                            new Color(0xFFE64A19),
                            new Color(0xFFD84315),
                            new Color(0xFFBF360C)
                    },
                    new Color[]{
                            new Color(0xFFEFEBE9),
                            new Color(0xFFD7CCC8),
                            new Color(0xFFBCAAA4),
                            new Color(0xFFA1887F),
                            new Color(0xFF8D6E63),
                            new Color(0xFF795548),
                            new Color(0xFF6D4C41),
                            new Color(0xFF5D4037),
                            new Color(0xFF4E342E),
                            new Color(0xFF3E2723)
                    },
                    new Color[]{
                            new Color(0xFFFAFAFA),
                            new Color(0xFFF5F5F5),
                            new Color(0xFFEEEEEE),
                            new Color(0xFFE0E0E0),
                            new Color(0xFFBDBDBD),
                            new Color(0xFF9E9E9E),
                            new Color(0xFF757575),
                            new Color(0xFF616161),
                            new Color(0xFF424242),
                            new Color(0xFF212121)
                    },
                    new Color[]{
                            new Color(0xFFECEFF1),
                            new Color(0xFFCFD8DC),
                            new Color(0xFFB0BEC5),
                            new Color(0xFF90A4AE),
                            new Color(0xFF78909C),
                            new Color(0xFF607D8B),
                            new Color(0xFF546E7A),
                            new Color(0xFF455A64),
                            new Color(0xFF37474F),
                            new Color(0xFF263238)
                    }
            };

    static final Color[] ACCENT_COLORS =
            new Color[]{
                    new Color(0xFFFF1744),
                    new Color(0xFFF50057),
                    new Color(0xFFD500F9),
                    new Color(0xFF651FFF),
                    new Color(0xFF3D5AFE),
                    new Color(0xFF2979FF),
                    new Color(0xFF00B0FF),
                    new Color(0xFF00E5FF),
                    new Color(0xFF1DE9B6),
                    new Color(0xFF00E676),
                    new Color(0xFF76FF03),
                    new Color(0xFFC6FF00),
                    new Color(0xFFFFEA00),
                    new Color(0xFFFFC400),
                    new Color(0xFFFF9100),
                    new Color(0xFFFF3D00)
            };

    static final Color[][] ACCENT_COLORS_SUB =
            new Color[][]{
                    new Color[]{
                            new Color(0xFFFF8A80),
                            new Color(0xFFFF5252),
                            new Color(0xFFFF1744),
                            new Color(0xFFD50000)
                    },
                    new Color[]{
                            new Color(0xFFFF80AB),
                            new Color(0xFFFF4081),
                            new Color(0xFFF50057),
                            new Color(0xFFC51162)
                    },
                    new Color[]{
                            new Color(0xFFEA80FC),
                            new Color(0xFFE040FB),
                            new Color(0xFFD500F9),
                            new Color(0xFFAA00FF)
                    },
                    new Color[]{
                            new Color(0xFFB388FF),
                            new Color(0xFF7C4DFF),
                            new Color(0xFF651FFF),
                            new Color(0xFF6200EA)
                    },
                    new Color[]{
                            new Color(0xFF8C9EFF),
                            new Color(0xFF536DFE),
                            new Color(0xFF3D5AFE),
                            new Color(0xFF304FFE)
                    },
                    new Color[]{
                            new Color(0xFF82B1FF),
                            new Color(0xFF448AFF),
                            new Color(0xFF2979FF),
                            new Color(0xFF2962FF)
                    },
                    new Color[]{
                            new Color(0xFF80D8FF),
                            new Color(0xFF40C4FF),
                            new Color(0xFF00B0FF),
                            new Color(0xFF0091EA)
                    },
                    new Color[]{
                            new Color(0xFF84FFFF),
                            new Color(0xFF18FFFF),
                            new Color(0xFF00E5FF),
                            new Color(0xFF00B8D4)
                    },
                    new Color[]{
                            new Color(0xFFA7FFEB),
                            new Color(0xFF64FFDA),
                            new Color(0xFF1DE9B6),
                            new Color(0xFF00BFA5)
                    },
                    new Color[]{
                            new Color(0xFFB9F6CA),
                            new Color(0xFF69F0AE),
                            new Color(0xFF00E676),
                            new Color(0xFF00C853)
                    },
                    new Color[]{
                            new Color(0xFFCCFF90),
                            new Color(0xFFB2FF59),
                            new Color(0xFF76FF03),
                            new Color(0xFF64DD17)
                    },
                    new Color[]{
                            new Color(0xFFF4FF81),
                            new Color(0xFFEEFF41),
                            new Color(0xFFC6FF00),
                            new Color(0xFFAEEA00)
                    },
                    new Color[]{
                            new Color(0xFFFFFF8D),
                            new Color(0xFFFFFF00),
                            new Color(0xFFFFEA00),
                            new Color(0xFFFFD600)
                    },
                    new Color[]{
                            new Color(0xFFFFE57F),
                            new Color(0xFFFFD740),
                            new Color(0xFFFFC400),
                            new Color(0xFFFFAB00)
                    },
                    new Color[]{
                            new Color(0xFFFFD180),
                            new Color(0xFFFFAB40),
                            new Color(0xFFFF9100),
                            new Color(0xFFFF6D00)
                    },
                    new Color[]{
                            new Color(0xFFFF9E80),
                            new Color(0xFFFF6E40),
                            new Color(0xFFFF3D00),
                            new Color(0xFFDD2C00)
                    }
            };
}
